package com.blq.web.domain.bo;

import com.blq.common.core.validate.AddGroup;
import com.blq.common.core.validate.EditGroup;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import com.blq.common.core.domain.BaseEntity;

/**
 * 钱包明细业务对象 user_money_item
 *
 * @author zeh
 * @date 2023-06-25
 */

@Data
@ApiModel("钱包明细业务对象")
public class UserMoneyItemBo {

    /**
     * 明细ID
     */
    @ApiModelProperty(value = "明细ID", required = true)
    @NotNull(message = "明细ID不能为空", groups = { EditGroup.class })
    private Long itemId;

    /**
     * 对象ID
     */
    @ApiModelProperty(value = "对象ID")
    private Long objId;

    /**
     * 对象名称
     */
    @ApiModelProperty(value = "对象名称")
    private String objName;

    /**
     * 对象类型（1个人 2公司）
     */
    private Integer objType;

    /**
     * 标题
     */
    @ApiModelProperty(value = "标题")
    private String title;

    /**
     * 内容
     */
    @ApiModelProperty(value = "内容")
    private String content;

    /**
     * 类别（1分账 2提现）
     */
    @ApiModelProperty(value = "类别（1分账 2提现）")
    private Integer type;

    /**
     * 途径（0钱包 1微信 2支付宝 3银行卡）
     */
    @ApiModelProperty(value = "途径（0钱包 1微信 2支付宝 3银行卡）")
    private Integer classify;

    /**
     * 金额
     */
    @ApiModelProperty(value = "金额")
    private BigDecimal money;

    /**
     * 状态（1待支付 2已到账 3取消）
     */
    @ApiModelProperty(value = "状态（1待支付 2已到账 3取消）")
    private Integer state;

    /**
     * 关联ID
     */
    @ApiModelProperty(value = "关联ID")
    private Long relationId;

    /**
     * 订单ID
     */
    @ApiModelProperty("工单ID")
    private Long orderId;

    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createTime;

}
